Curated Media Library

ABSTRACT

In some implementations, a computing device may generate a day view, month views, and year view that show cards specific to each view. The cards include images, videos, and/or other assets from a media library that reflect a corresponding time frame of the card on which the assets are displayed. A selected view is presented in a graphical user interface (GUI) for interaction with a user of the media library. Upon selection of an asset displayed to the GUI, the view is switched to show more assets from a time frame similar to the selected asset while maintaining a focus on the selected asset.

INCORPORATION BY REFERENCE; DISCLAIMER

Each of the following applications are hereby incorporated by reference:application Ser. No. 16/560,104 filed on Sep. 4, 2019; application No.62/844,050 filed on May 6, 2019. The Applicant hereby rescinds anydisclaimer of claim scope in the parent application(s) or theprosecution history thereof and advises the USPTO that the claims inthis application may be broader than any claim in the parentapplication.

TECHNICAL FIELD

The disclosure generally relates to selecting and displaying images of amedia library, and more particularly, to curating the media library toselect and arrange interesting images to display.

BACKGROUND

Conventional media libraries display all images and videos containedtherein in one or more interfaces. The pictures and videos may be sortedaccording to a sorting parameter, such as a time of capture,alphabetically by filename, etc. However, for large media libraries thatinclude hundreds or thousands of images and videos, such a presentationmay be too cumbersome for a user to manage, too slow to load, and tooburdensome for the user to navigate in order to view desired images andvideos. These experiences may lead to the user choosing to not visit themedia library or interact with images and videos stored to the medialibrary, which may reduce the use of already-captured images and videos,along with a reduced desire to capture more pictures and videos in thefuture.

SUMMARY

In some implementations, a computing device may generate a day view,month views, and year view that show cards specific to each view. Thecards include images, videos, and/or other assets from a media librarythat reflect a corresponding time frame of the card on which the assetsare displayed. A selected view is presented in a graphical userinterface (GUI) for interaction with a user of the media library. Uponselection of an asset displayed to the GUI, the view is switched to showmore assets from a time frame similar to the selected asset whilemaintaining a focus on the selected asset.

Particular implementations provide at least the following advantages. Alarge media library may include hundreds or thousands of distinctimages, videos, and other assets. When a user attempts to navigatethrough a large media library, it may be difficult to locate desiredassets in a timely and intuitive manner. The curated media librarypresents key assets that are most likely to be sought after by the userbased on a variety of factors, and shows these key assets in a series ofviews that may be quickly and intuitively switched between by the userto show more assets like the key asset when desired, or allow a timeframe to be changed quickly by the user to look for other assets atdifferent time periods.

Details of one or more implementations are set forth in the accompanyingdrawings and the description below. Other features, aspects, andpotential advantages will be apparent from the description and drawings,and from the claims.

DESCRIPTION OF DRAWINGS

FIG. 1 is a block diagram of an example system for providing a curatedmedia library.

FIG. 2 shows an example all assets view of the media libraryapplication.

FIG. 3 shows an example day view of the media library applicationfocusing on a day card.

FIG. 4A shows an example day view of the media library applicationfocusing on an aggregation card.

FIG. 4B shows an example day view of the media library applicationfocusing on a single day card showing multiple events.

FIG. 5 shows an example month view for the media library applicationfocusing on a month card.

FIG. 6A shows an example year view for the media library applicationfocusing on a year card.

FIG. 6B shows another example year view for the media libraryapplication.

FIG. 7 shows an example transition from a year view to a month view.

FIG. 8 shows an example transition from a month view to a day view.

FIG. 9 shows an example transition from a day view to an all assetsview.

FIG. 10 is a flow diagram of an example process for curating assets of amedia library.

FIG. 11 is a flow diagram of an example process for determining keyassets of a media library.

FIG. 12 is a flow diagram of an example process for selecting anddisplaying assets of a media library.

FIG. 13 is a flow diagram of an example process for selecting anddisplaying assets of a media library.

FIG. 14 is a block diagram of an example computing device that mayimplement the features and processes of FIGS. 1-13 .

Like reference symbols in the various drawings indicate like elements.

DETAILED DESCRIPTION

Many users have accumulated large media libraries since the advent ofdigital cameras, and more particularly, the incorporation of digitalcameras into mobile devices, such as smart phones and other electronicdevices that are easily transportable by a user. Media assets includedigital photos and images, videos, animated images, compositepresentations and compilations, etc. A large media library may includemultiple hundreds and even thousands of individual images and videosthat have been collected over years by one or more users, and stored toone or more locations. When a user attempts to access and manage a largemedia library, there may be many issues associated with the vastquantity of images and videos included therein, such as difficulty inlocating a desired image or video within the numerous assets stored tothe media library, slow loading times for the individual assets, slowresponse times for user interactions with the media library (such asscrolling through the images and videos, selecting a particular image todisplay, transitioning between display types, etc.), etc.

Therefore, it is beneficial for the images, videos, and other assetswithin any size of media library to be curated such that the bestimages, videos, and other assets are more easily viewed and accessed bya user. Furthermore, in some approaches, images and videos which are notlikely to be sought by the user may be filtered out from most views ofthe media library. Embodiments described herein provide an enhanced userexperience to view and access the media library that promotes the bestimages, videos, and other assets.

In one example, assume that a user of a smartphone, named Mary, haspictures and videos of her children and family saved to her smartphone,along with even more images, videos, and composite presentations storedto a remote cloud server that are accessible on her smartphone. Assumethat Trevor, Mary's son is celebrating his birthday tomorrow, and Marywants to find a photo that she took of Trevor's third birthday partyback in 2013. Further assume that at this birthday party, Mary capturedthree photos and a video from the party: one photo of kids playing thatis blurry, one photo of Trevor smiling broadly next to his birthdaycake, one photo of the receipt for the cake so that Mary could pay backher mother for buying the cake, and a video of Trevor opening gifts.Mary really likes the photo of Trevor smiling with his birthday cake,but is not interested in the blurry photo or the photo of the receiptfor the cake. Mary also likes the video, but not as much as the photo ofTrevor smiling with his birthday cake, and over the years Mary hasreturned often to view this particular photo.

Using conventional media libraries that are sorted chronologically, shemay need to navigate the media library manually starting from the mostrecent photos and videos taken, backward through all of her images andvideos taken in all the years from now, through 2014, to arrive at 2013.Then, Mary may need to navigate through all the photos taken in 2013 tolocate the exact photo from Trevor's birthday party that she is lookingfor from amongst all other photos taken and stored from the year 2013.This may be a very time consuming and frustrating procedure for Mary tolocate the exact photo she wants, and may cause her to abandon theeffort before obtaining the photo of Trevor's third birthday party. Ifthe media library was able to anticipate her desire to find the photo ofTrevor smiling with his birthday cake from Trevor's third birthdayparty, without Mary needing to perform a search for the photo, her taskwould be completed faster and she may find more enjoyment in using themedia library.

FIG. 1 is a block diagram of an example system 100 for providing acurated media library. System 100 may include multiple user devices,e.g., smartphone 102, laptop 104, etc. Each user devices 102, 104 mayinclude a media library application 108 that is configured to displayassets accessible to the particular user device on which the medialibrary application 108 is executed, such as assets stored locally tothe user device. Moreover, in one example, any of the various userdevices 102, 104 may be configured to connect to a media server 110 toallow the media library application 108 to access additional assets thatare stored remotely to media server 110 (and may not be local to theparticular user device). In one approach, the media library application108 may display remotely-stored and/or locally-stored assets in agraphical user interface (GUI) on user devices 102, 104.

Any type of user device (including those not specifically shown in FIG.1 ) may be included in system 100, such as desktop computers, mediadevices like set-top boxes (STBs), mobile phones, digital streamingdevices, smart televisions (TVs), tablet computers, wearable devices,etc.

Media library application 108 may be configured to present a medialibrary via user devices 102, 104. The media library, although notshown, may be configured to present a plurality of assets to a userinteracting with the media library. Any type of asset may be shown inthe media library, such as images, photos, videos, animated images,composite presentations, etc., as described in more detail in FIGS. 2-9.

An image, as used herein, describes any type of digitally storedviewable content, such as static animation, a logo, a cartoon, artwork,etc. A photo as used herein describes a digital representation ofreal-world imagery that was captured using a digital camera device.

An animated image, as used herein, describes a container or other fileformat that includes a series of images that are manipulated orprocessed to appear as a coherent moving image when opened or played.Some example animated images include, but are not limited to, graphicsinterchange format (GIF) files, portable network graphics (PNG) files,multiple-image network graphics (MNG) files, Live Photos™, etc.

A composite presentation, as used herein, describes an arrangement ofmedia assets, such as images and/or videos, that are selected accordingto a theme or purpose, and may be set to audio or music. For example, acomposite presentation may be directed to a weekend ski trip, and mayinclude videos and photos from the ski trip, such as pictures of familymembers surrounding a firepit drinking hot cocoa followed by an image ofthe ski resort, photos of a child wearing ski clothing, and then videosof family members skiing down the slopes. Of course, the order of theassets, the music and other audio played, titles, text or audiodescriptions, etc., may be set or modified, as desired by a user of themedia library.

Referring again to FIG. 1 , in one approach, user devices 102, 104 mayutilize a network 106 to access media server 110, or any other remotelyaccessible data source. Any type of network 106 may be utilized, such asthe Internet, wide area network (WAN), local area network (LAN),wireless local area network (WLAN), virtual private network (VPN),mobile broadband network, etc. Moreover, in an approach, more than onenetwork may be used to connect a user device 102, 104 to any othersystem, device, or network.

Media server 110 may be any type of system or device that is configuredto store assets, and provide access to and/or transfer such assets to arequesting user device 102, 104. In one example, media server 110 may bea cloud server that hosts images, videos, and other assets so that theymay be accessed, on demand, by user devices 102, 104. In a furtherapproach, the media applications 108 may be client applications thatrely on the media server 110 to provide instructions and/or assets fordisplay on the user devices 102, 104.

Returning to the example of Mary, she may use mobile phone 102 to accessa media library via media library application 108 to search for thephoto of Trevor and his birthday cake from his third birthday party. Ifthe photo is not stored locally to mobile phone 102, then media libraryapplication 108 may access media server 110 (possibly via network 106)to search for, and ultimately obtain the desired photo using any of thevarious approaches described herein.

FIGS. 2-6B show different example views or cards that may be displayedwithin a GUI of a media library application. These various views may beused to display different levels of the media library to allow a user,such as Mary in the example above, to more easily locate and access anasset that is of interest to Mary, like the picture of Trevor and hisbirthday cake from his third birthday party. In addition, in oneexample, undesirable assets, like the blurry photo or the receipt photomay be hidden from most views so that the number of assets that Marynavigates through to find a desired asset is reduced, making the taskeasier for Mary.

FIG. 2 shows an example all assets view 200 of the media libraryapplication. This view 200 may be used to display all assets of a medialibrary, in one approach. All four of the assets captured duringTrevor's third birthday party would appear in this view, for example.The assets may include still images 202, videos 204, animated images206, or any other asset types, such as composite presentations,panoramic images, etc. As shown, only a portion of a plurality of assetsthat are stored to the media library are actually shown in all assetsview 200 at any given time. This is because it is not possible to showall assets of a large media library in any functional way withoututilizing a massive display, which is simply not available on mostdevices which are used to view the media library, e.g., mobile phones,laptop computers, etc.

The assets may be sorted chronologically in the media library, in anexample. Other methods of sorting the assets may be employed inconjunction with or in place of chronological, such as alphabetically byname or title, by size, by curation score (as described later), byaesthetic score (as described later), etc. In addition, a scroll bar 208may be provided to allow a user to scroll through the plurality ofassets that may be displayed in all assets view 200, in an example.However, any type of mechanism that is able to navigate through theplurality of assets quickly and intuitively may be used, such as fingerdragging on a touchscreen, up and down soft or hard key input, etc.

In all assets view 200, each of the assets is shown having substantiallythe same size, regardless of the type of asset in one approach. Bysubstantially equal, what is meant is that each asset which is largerthan the common frame size is scaled down to fit within the common frameof the all assets view 200, while assets which are smaller than thecommon frame size are centered within the common frame for display. Inthe example described above, the three photos and the video fromTrevor's third birthday party may all appear having a same size.

In an example, a user may zoom in or zoom out while in all assets view200. A user may provide zoom input to indicate a desired zoom level,such as by selecting one of a series of options (e.g., 10%, 25%, 50%,75%, 90%, 100%, 150%, 250%, etc.), moving a slider icon on a slider bar,touch and drag input on a touchscreen display, etc. Zooming in increasesa size of each asset, while zooming out decreases a size of each asset,with the increase or decrease being proportional to zoom input from theuser.

In another approach, some of the assets shown in the all assets view 200may have different sizes than other assets. The decision as to whichassets to show more prominently (larger) may be based on severalfactors, as discussed in more detail later. In the example with Mary'sphotos, the blurry photo and the receipt photo may appear smaller thanthe photo of Trevor and his birthday cake and the video of openinggifts. In a further approach, because Mary likes the photo more than thevideo, the photo may appear larger than the video.

In an approach, all assets view 200 may include a ribbon element 210.The ribbon element 210 may include a set of selectable links or labels.For example, in FIG. 2 , four labels are shown: Year label 212, Monthlabel 214, Day label 216, and All label 218. All label 218 is shownhighlighted, because the current view is all assets view 200. Any typeof highlighting may be used to denote an active label, such as boldlettering, enlarged lettering, italicized lettering, a differentbackground color surrounding the current label, different coloring forthe current label, etc. Moreover, any name or image may be used torepresent the different levels of the media library that are representedby the various labels, as would be appropriate for the specific labelschosen to navigate through the media library.

In FIG. 2 , ribbon element 210 is shown positioned along a bottom of allassets view 200. However, ribbon element 210 may be positioned along atop of view 200, a side of view 200 (with vertical lettering in oneexample), or it may auto-hide and disappear when a user is notinteracting with view 200 in some examples.

Each of the labels may be associated with a different type of card orview, so that when a particular label is selected, the view will changeto display the associated card or view. For example, when Day label 216is selected, the current view will transition to a day view, describedin more detail in FIGS. 3-4 . In another example, when Month label 214is selected, the current view will transition to a month view, describedin more detail in FIG. 5 . According to another example, when Year label212 is selected, the current view will transition to a year view,described in more detail in FIG. 6A.

In addition, a current focus of the current view will be maintainedafter the transition to the selected view. For example, in FIG. 2 , ifimage 220 is a focus of view 200, indicated by the bold framesurrounding image 220, then image 220 will remain the focus of attentionafter transitioning to a day view by ensuring that a day or days thatare shown in the day view include image 220 (in other words, a timestampassociated with image 220 occurs during a day that is shown in the dayview transitioning to), e.g., if image 220 was taken on May 17, 2012,then the asset(s) shown in response to selecting Day label 216 will betaken on or around May 17, 2012.

The focus of a particular view or card may be indicated by a userselecting an asset within the view or card in one approach. Thisselection of the image may be indicated using a gesture or user inputdevice, e.g., a mouse hover, mouse click, touch input on a touchscreendisplay, stylus input on a tablet, remote control, trackpad input on alaptop computer, etc.

In another approach, the focus of a particular view or card may beindicated by an image, video, or other asset that is currently displayedin a particular view. For example, if a user scrolls through assets ofall assets view 200 and arrives at a portion of the plurality of assetsthat shows images captured on Jan. 6, 2017, then a transition to anotherview will maintain a focus on that date (e.g., a day view will showassets from Jan. 6, 2017, a moth view will show assets from January2017, and a year view will show assets from 2017).

When multiple assets from different dates are shown on a current viewwhen a transition to another view is requested, absent explicit userinput selecting an asset to focus on, the media library application maydetermine that an asset located near a center of all currently-displayedassets is the focus of the current view, in one approach.

In another approach, a last user selected image may remain a focus ofthe particular view in the absence of a later selection.

FIG. 3 shows an example day view 300 of the media library applicationfocusing on a day card 302. This view 300 may be used to display some orall assets associated with a particular day (Apr. 1, 2019 for example).In one approach, day view 300 displays curated assets 308 on a day card302, and hides from view other assets associated with the particular daythat are filtered out from the set of curated assets 308 presented onday card 302. FIG. 10 shows an example curation process that may be usedin the context of determining which assets to display in day view 300 ofFIG. 3 , in one approach.

Continuing the example for Mary, only the video of opening gifts and thephoto of Trevor and his birthday cake may be presented in a day view ofTrevor's third birthday, while the blurry photo and receipt photo wouldbe filtered out and hidden from the day view of Trevor's third birthday.This would allow Mary to more easily access desired assets from Trevor'sthird birthday party without needing to navigate through undesiredcontent (like the blurry photo and receipt photo), thereby providing abetter user experience because the media library application identifiesthe most meaningful assets (e.g., based on aesthetics, people, location,etc.) and presents those assets to the user prominently.

An example day view 300 focusses on Apr. 1, 2019, and displays elevencurated assets 308 from this day within day card 302. Day card 302includes a timeframe reference 304 which indicates the particular dayrepresented by day card 302 (Apr. 1, 2019) and a contextual description306 of curated assets 308 included in day card 302 (“Anniversary”). Thetimeframe reference 304 may be determined based on metadata of curatedassets 308 (e.g., a timestamp for creation, timestamp for last modified,timestamp for when asset is received in media library, etc.). Thecontextual description 306 may be created based on metadata associatedwith curated assets 308, information about the user of the media library(important dates, profile information describing the user, social mediainformation, etc.), information about family members of the user,information about friends of the user, etc. This collected informationmay be used to determine an appropriate contextual description forassets 308. As shown, curated assets 308 relate to an anniversary forthe user or another person represented in curated assets 308 in anexample, but any event, holiday, trip, location, date, etc., may beconsidered in determining the contextual description 306.

In one approach, the contextual description 306 is automaticallygenerated, and may be user-editable after creation to allow the user tomore concisely or accurately describe curated assets 308 included in daycard 302.

Some assets 308 on day card 302 are shown larger than other assets. Adecision as to which assets to promote (e.g., show larger) may be basedon which assets are determined to be key asset(s) for the day. A keyasset may be determined, in an example, based on a curation score of thecurated assets shown to the day card 302. For example, the largest assetpositioned at a top of day card 302 may be a key asset for Apr. 1, 2019.The next largest asset shown at a lower left corner of day card 302 mayalso be a key asset having a next highest curation score. Calculation ofcuration scores is described in more detail later, and any method ofdetermining a key asset may be used, alone or in conjunction withcuration scores or some other known method of determining key assets.

The choice of which assets 308 to show on day card 302 and which assetsto hide from the day view 300 may be based on several factors. Oneintent in determining how many and what sizes of assets to display tothe various day cards 302 is to eliminate any white space where assetsare not shown in day view 300.

In one example, an asset count reference 314 may be included on day card302 which indicates a total number of assets that exist for Apr. 1, 2019in the media library, e.g., 34. The location of where the asset countreference 314 is displayed is not limited to the position shown in FIG.3 , as it may be located on a left side of the day card 302, right side,center, top, bottom, etc. The asset count reference 314 may alsoindicate a chronological order for the asset shown within the totalnumber of assets in an example, e.g., 10, indicating that the assetshown is the 10^(th) asset captured in for April 1. The asset countreference 314 as shown in day view 300 is just one example of howinformation may be relayed to a user, and many other possibilities areavailable for providing information about the assets available in themedia library for each particular day. Moreover, in an approach,selection of asset count reference 314 may open an all asset view with afocus on the key asset for Apr. 1, 2019.

According to one approach, day view 300 may include multiple day cards302 for a single day in response to multiple types of events beingcaptured on the same day. The groupings for the assets may be based onwhere and when the assets were created. In one example, assets capturedat a user's work location, assets captured at a user's home location,assets captured during a trip outside of a user's locale area, andassets captured for any and all other events may be displayed onseparate cards 302 on the day view 300 for the same day in which theyare captured.

Other event types may be added to these four types and used to grouptogether assets captured on same days for display in the day view 300,as would be apparent to one of skill in the art upon reading the presentdisclosures.

To determine whether assets are created at the same event, severaldifferent criteria may be considered. One criterion for determiningwhether assets are created at the same event is an elapsed time betweenthe capture of the individual media items. For example, if there is abreak, pause, or time lapse of greater than a threshold amount (e.g., 1hour, 2 hours, etc.) between the time of capture for any two assets, itis indicative of the assets being from different events. Anothercriterion for determining whether assets are created at the same eventis whether the assets were captured using the same device or differentdevices. For example, two assets captured at about a same time but atdifferent locations using different devices most likely are not of thesame event, while assets captured at about the same time by the samedevice probably are of the same event. In another example, assetscaptured at about the same time at the same location by differentdevices probably are of the same event, but when location data is notavailable, the different device capturing the asset may be used as aclue of whether the assets represent the same event. Another criterionfor determining whether assets are created at the same event is personsrecognized in the assets. For example, if the same person or group ofpeople appear in several assets, they are more likely to be of the sameevent. Yet another criterion for determining whether assets are createdat the same event is a location where an asset is captured, as specifiedby metadata or input from the user. For example, a group of photoscaptured at the same location are probably of the same event.

Any of the above criteria may be used alone or in combination to providea more accurate assessment of whether a group of assets are from thesame event, even if some of the assets in the group were obtained fromdifferent devices, by different users, at different locations, across arange of different times, etc.

In an approach, each event may be limited to collecting assets from onedevice and for one time period. The time period may not extend past 3 AMor 4 AM in a couple of examples, to allow for the user to have at leasta 3-4 hour break for sleep. A time period may begin on a new daystarting at 5 AM or 6 AM, in several examples. The clock of the devicewhich captured the asset is used to timestamp when the asset wascreated, with local time for where the device is located at a time ofcapturing the asset being used.

In one example, density-based clustering may be used for determiningwhich assets belong to an event. Some rules may be applied to thecollection of assets for a particular grouping. For example, GPS errorcorrection may be applied to determine an accurate location for theasset, assets received from other devices may be collected in a separategroup even if they are determined to be from the same event, eachdistinct location where assets are created may be considered a differentevent, continual movement of greater than a threshold velocity maysignal a continued event, etc.

Ribbon element 210 may be shown in day view 300 to indicate that thecurrent view is day view 300 by highlighting Day label 216 in anexample. Ribbon element 210 may also be configured to receive user inputto navigate to another view using one of the labels (e.g., Year label212, Month label 214, All label 218). Day views include both individualday cards (e.g., day card 302) and aggregation cards (e.g., aggregationcard 312).

In one example, multiple day cards may be shown in day view 300 from afirst day, and then one or more day cards from another day may be shownwhen day view 300 has space to fit all the multiple day cards.

In another example, because day card 302 for Apr. 1, 2019 does not fillthe entire GUI, other day and/or aggregation cards (as appropriate in achronological ordering) may be displayed before and/or after day card302. For example, aggregation card 312 is shown below (after) day card302 which displays curated assets 310 for an aggregation of days (Apr.2-4, 2019) that represent a trip to Napa. Aggregation cards thatrepresent multiple days are described in more detail with reference toFIG. 4A.

FIG. 4A shows an example day view 400 of the media library applicationfocusing on an aggregation card 402. This view 400 may be used todisplay some or all assets associated with multiple consecutive days(Mar. 12-15, 2019 for example).

In one approach, day view 400 displays curated assets 406 on aggregationcard 402 in response to a determination that there are not enough assetsfrom any of the individual days of the aggregation period (Mar. 12-15)to display the days on separate day cards. In other words, the medialibrary application may determine a number of curated assets for eachday, compare the number of curated assets for each day with apredetermined day card threshold (e.g., two, three, four, five curatedassets, etc.), and determine whether one or more of the particular daysshould be represented with its own day card, or aggregated together withother adjacent days (previous day or subsequent day) to form anaggregation card to represent assets during the aggregation period.

In one example, one or more days may not have any assets associated withthose days, and therefore may be included in an aggregation card withone or more other consecutive days, which may or may not include curatedassets.

In an example, presence of an asset for a particular day is notsufficient to cause the asset to be presented on an individual day card,or even display the asset on an aggregation card; instead, only curatedassets are included in a determination of whether to use an aggregationcard or a day card to present assets in the media library in oneapproach.

In another approach, an aggregation card may be used to represent a tripthat may span one or more days away from a user's typical locale. Inthis approach, each user may have a locale area assigned to the userbased on historical device location information obtained from electronicdevices that are used by the user, e.g., a smartphone, laptop computer,etc. By ascertaining a typical locale for a user, it can be determinedwhen the user leaves the locale area, which generally indicates that theuser has taken a trip. In several examples, the locale area for a usermay include an area of between 30 square kilometers and 100 squarekilometers centered at a home location of the user, such as a localearea of about 70 square kilometers.

The locale area may be expanded or contracted for a particular userbased on historical location data. For example, if Sam typically stayswithin an area of 20 square kilometers around his home, then the localearea for Sam may be set at 20 square kilometers surrounding his home.Then, if Sam begins regularly travelling outside of this set localearea, it may be enlarged to include the regular activity.

In another example, if Susan travels to work a great distance from home,because she lives in Tracy, Calif. and works in San Francisco, Calif.about 100 kilometers away, the locale area for Susan may be set toinclude this distance to work (about 100 kilometers) within a radius ofthe locale area, such that the locale area for Susan may encompass anarea of more than about 31,400 square kilometers. In other approach, twodistinct locale areas may be set for Susan, one around her work locationand one around her home location, with the path between the twolocations being ignored for determination of a trip being taken bySusan.

In an example, a home location for a user may be determined based onhistorical location data for the user and the user's associatedelectronic devices which have location services enabled thereon. A usertypical spends most nights at home, and therefore a majority of nightsspent at a single location is an indication that this location is theuser's home location. A location of a device may also be determinedbased on which cell tower is used for mobile communications at differenttimes of the day, along with other indicia of location that may obtainedby the media library application from device information.

Also, in an example, a user's work location may also be determined basedon historical location data. Typically, if a user spends most weekdaysat a location other than the user's home location, then this location ismost likely the user's work location.

Using these techniques, or other techniques known in the art, a homelocation and a work location may be determined for each user,individually, for use in determining how to enrich the user experiencefor presentation of assets in the media library for each user.

Example day view 400 focusses on aggregation period Mar. 12-15, 2019,and displays four curated assets 406 from within this aggregation periodon aggregation card 402. Aggregation card 402 may include a timeframereference 404 which indicates the particular aggregation periodrepresented by aggregation card 402 (Mar. 12-15, 2019). Although notshown, a contextual description of curated assets 406 may be included inaggregation card 402 in some approaches. The timeframe reference 404 maybe determined based on metadata of curated assets 406 (e.g., a timestampfor creation, timestamp for last modified, timestamp for when asset isreceived in media library, etc.).

FIG. 10 shows an example curation process that may be used in thecontext of determining which assets to display to card(s) in day view400 of FIG. 4A, in one approach.

Some assets 406 on aggregation card 402 are shown larger than otherassets. A decision as to which assets to promote (show larger) may bebased on which assets are determined to be key asset(s) for theaggregation of days. A key asset may be determined, in an example, basedon a curation score of all assets collected for a particular day. Forexample, the largest asset positioned at a top of aggregation card 402may be a key asset for time period Mar. 12-15, 2019. The other assetsshown all appear with a same size, indicating that none of these assetsare key assets for this time period. Calculation of curation scores isdescribed in more detail later, and any method of determining a keyasset may be used, alone or in conjunction with curation scores or someother known method of determining key assets.

The choice of which assets 406 to show on aggregation card 402 and whichassets to hide from the day view 400 may be based on several factors. Inone example, an asset count reference 416 may be included on aggregationcard 402 which indicates a total number of assets that exist for Mar.12-15, 2019 in the media library, e.g., 8. The asset count reference 416may also indicate a chronological order for the asset shown within thetotal number of assets in an example, e.g., 4, indicating that the assetshown is the 4^(th) asset captured in the time period of March 12-15. Inanother example, the asset count reference 416 may indicate numbers forthe day in which the asset shown was captured rather than overallnumbers for the aggregation time period. The asset count reference 416as shown in day view 400 is just one example of how information may berelayed to a user, and many other possibilities are available forproviding information about the assets available in the media libraryfor each particular day. Moreover, in an approach, selection of assetcount reference 416 may open an all asset view with a focus on the keyasset for Mar. 12-15, 2019.

According to one approach, day view 400 may include multiple day cards408 for a single day in response to multiple types of events beingcaptured on the same day. The groupings for the assets may be based onwhere and when the assets were created. In one example, assets capturedat a user's work location, assets captured at a user's home location,assets captured during a trip outside of a user's locale area, andassets captured for any and all other events may be displayed onseparate day cards 408 on the day view 400 for the same day in whichthey are captured.

Other event types may be added to these four types and used to grouptogether assets captured on same days for display in the day view 400,as would be apparent to one of skill in the art upon reading the presentdisclosures.

Ribbon element 210 may be shown in day view 400 to indicate that thecurrent view is day view 400 by highlighting Day label 216 in anexample. Ribbon element 210 may also be configured to receive user inputto navigate to another view using one of the labels (e.g., Year label212, Month label 214, All label 218). Day views include both individualday cards (e.g., day card 408) and aggregation cards (e.g., aggregationcard 402).

Because aggregation card 402 for aggregation period Mar. 12-15, 2019does not fill the entire GUI, day card 408 is shown below (after)aggregation card 402 which displays curated assets 414 for an individualday (Mar. 16, 2019) that represent a dinner in San Francisco. The eventis indicated by the contextual reference 412, while the date associatedwith day card 408 is indicated by timeframe reference 410.

FIG. 4B shows an example day view 418 of the media library applicationfocusing on a single day card 420 showing multiple events. This view 418may be used to display some or all assets associated with the singleday, regardless of a location or event in which the assets were acquiredor captured (Dec. 6, 2014 for example). In an example, assume that onthis day, Mary was on a ski trip where she had breakfast in the morningat a café, skied during the day, then went out to a restaurant and somecocktails in the evening. Each of these different events may be capturedon different day cards or on the same day card, in several approaches.

In one approach, day view 418 displays curated assets 424 on day card420 for Dec. 6, 2014 that are directed to “Breakfast” as indicated bycontextual reference 426. Four curated assets 424 are shown for theBreakfast event, with the key asset (shown larger than the other curatedassets for Breakfast) having an asset count reference 428.

In one example, the asset count reference 428 may indicate a totalnumber of assets that exist for the Breakfast event on Dec. 6, 2014 inthe media library, e.g., 12. The asset count reference 428 may alsoindicate a chronological order for the asset shown within the totalnumber of assets in an example, e.g., 3, indicating that the asset shownis the 3^(rd) asset captured for the Breakfast event. In anotherexample, the asset count reference 428 may indicate numbers for the dayin which the asset shown was captured rather than numbers for the event.The asset count reference 428 as shown in day view 418 is just oneexample of how information may be relayed to a user, and many otherpossibilities are available for providing information about the assetsavailable in the media library for each particular day and/or event.Moreover, in an approach, selection of asset count reference 428 mayopen an all asset view with a focus on the key asset for the Breakfastevent on Dec. 6, 2014.

As shown in this example, day view 418 also displays curated assets 430on day card 420 for Dec. 6, 2014 that are directed to “Skiing” asindicated by contextual reference 432. Five curated assets 430 are shownfor the Skiing event, with the key asset (shown with the contextualreference 432 having an asset count reference 434.

In one example, the asset count reference 434 may indicate a totalnumber of assets that exist for the Skiing event on Dec. 6, 2014 in themedia library, e.g., 22. The asset count reference 434 may also indicatea chronological order for the asset shown within the total number ofassets in an example, e.g., 6, indicating that the asset shown is the6^(th) asset captured for the Skiing event. The asset count referencemay display other information and function as described above, in moreexamples.

Also shown in this example, day view 418 displays curated assets 436 onday card 420 for Dec. 6, 2014 that are directed to “Night Out” asindicated by contextual reference 438. Five curated assets 436 are shownfor the Night Out event, with the key asset (shown larger with thecontextual reference 438 having an asset count reference 440.

In one example, the asset count reference 440 may indicate a totalnumber of assets that exist for the Night Out event on Dec. 6, 2014 inthe media library, e.g., 17. The asset count reference 440 may alsoindicate a chronological order for the asset shown within the totalnumber of assets in an example, e.g., 10, indicating that the assetshown is the 10^(th) asset captured for the Night Out event. The assetcount reference may display other information and function as describedabove, in more examples.

FIG. 10 shows an example curation process that may be used in thecontext of determining which assets to display to day card 420 in dayview 418 of FIG. 4B, in one approach.

Some assets in each event may be displayed larger to day card 420 thanother assets. A decision of which assets to promote (e.g., show larger)may be based on which assets are determined to be key asset(s) for theevents of the day. A key asset may be determined, in an example, basedon a curation score of all assets collected for a particular eventwithin the day. For example, the largest asset positioned at a top ofday card 420 may be a key asset for the day. Calculation of curationscores is described in more detail later, and any method of determininga key asset may be used, alone or in conjunction with curation scores orsome other known method of determining key assets. Moreover, the choiceof which assets 406 to show on day card 420 and which assets to hidefrom the day view 418 may be based on several factors as also describedherein.

According to one approach, day view 418 may include multiple day cardsfor a single day in response to multiple types of events being capturedon the same day. In another approach, as shown in FIG. 4B, one day card420 may show multiple events. The groupings for the assets may be basedon where and when the assets were created. In one example, assetscaptured at a user's work location, assets captured at a user's homelocation, assets captured during a trip outside of a user's locale area,and assets captured for any and all other events may be displayed onseparate day cards on the day view 420 for the same day in which theyare captured.

Other event types may be added to these four types and used to grouptogether assets captured on same days for display in the day view 420,as would be apparent to one of skill in the art upon reading the presentdisclosures.

Ribbon element 210 may be shown in day view 418 to indicate that thecurrent view is day view 418 by highlighting Day label 216 in anexample. Ribbon element 210 may also be configured to receive user inputto navigate to another view using one of the labels (e.g., Year label212, Month label 214, All label 218). Day views include both individualday cards (e.g., day card 420) and aggregation cards.

FIG. 5 shows an example month view 500 for the media library applicationfocusing on a month card 502. This view 500 may be used to display keyassets 506 associated with a particular month (January 2019 forexample). Key assets 506 are assets from the media library associatedwith the particular month card 502 that are determined to be the bestassets to represent the month (e.g., most likely to be important,desirable, memorable, aesthetically pleasing, etc.).

Key assets may be selected from curated assets based on curation scoresof the various curated assets. A curated asset which attains a highestcuration score for a particular week in a month may be selected as thekey asset to represent that week, in one approach.

In another approach, a threshold curation score may be determined, andthis threshold curation score may be compared to curation scorescalculated for curated assets for the month. The threshold curationscore may be dynamically determined to only select a certain percentageof assets to be key assets (e.g., a top 10%, 5%, 2%, 1%, 0.5%, etc.).All curated assets that have a curation score greater than or equal tothe threshold curation score may be considered a key asset for the monthin this approach.

In an example, determining which key assets to display for a month mayinclude randomly selecting up to five key assets from amongst all keyassets for a particular month and displaying these selected key assetson month card 502. Each time month card 502 is navigated to by a user,another set of key assets may be randomly selected and displayed. Inthis way, the month card 502 may dynamically change each time it isnavigated to, but still displays only key assets for the monthrepresented which are most likely to be the best assets taken from themonth.

A curation score for a particular curated asset may be determined basedon one or more factors. Example factors used to determine a curationscore include, but are not limited to, a global aesthetic, a number ofshares for the particular asset, a number of views for the particularasset, a number of persons identified in the particular asset, a size ofa grouping of assets that includes the particular asset, an imputedmeaning for the particular asset, etc. An example process fordetermining key assets is described in more detail in FIG. 11 .

Referring again to FIG. 5 , in one approach, month view 500 displays upto five key assets 506 on month card 502 in response to a determinationthat a key asset is present for each calendar week of the particularmonth (e.g., January 2019). Although a month is limited to 31 days(i.e., 4 weeks+3 days), sometimes a month may be spread across fivecalendar weeks. Therefore, a month card 502 may be represented by up tofive key assets 506 in an approach.

For example, January 2019 starts on a Tuesday and ends on a Thursday;therefore, calendar weeks of January 2019 may be: 1) TuesdayJanuary1-Saturday January 5, 2) Sunday January 6-Saturday January 12, 3)Sunday January 13-Saturday January 19, 4) Sunday January 20-SaturdayJanuary 26, and 5) Sunday January 27-Thursday January 31. Of course,calendar weeks may begin on any day of the week (Saturday, Sunday,Monday, etc.) but are limited to including seven days, unless they arethe first or last calendar week, where they may include less than sevendays.

In one example, one or more calendar weeks of a month may not have anykey assets associated with those weeks, and therefore may not have a keyasset shown on month card 502. In an example, a month which includes nokey assets may not have a month card shown in month view 500, as shownby the absence of a month card for February 2019 between month card 502for January 2019 and month card 508 for March 2019 that shows key assets510 for March 2019. In another example, each month may be represented byat least a timeframe reference 504, even if no key assets are displayedon a month card.

Moreover, because month card 502 for January 2019 does not fill theentire GUI, month view 500 also displays month card 508 below (after)month card 502. The portion of month card 508 that is visible displayskey assets 510 for the next month having key assets to display, e.g.,March 2019.

In some approaches, one or more of the key assets 506 on month card 502may include a contextual description (not shown). An optional contextualdescription may be displayed at all times, or only when a user isinteracting with, has selected, or otherwise focusses on a particularkey asset of month card 502, in various examples. Any type of user inputmay be used to determine interest in a particular key asset, such ashovering over the key asset with a mouse cursor, finger hovering overthe key asset using a touchscreen, touch and hold input, etc.

The choice of which key assets 506 to show on month card 502 and whichassets to hide from the month view 500 may be based on several factors.In one example, an asset count reference 512 may be included on monthcard 502 which indicates a total number of assets that exist for January2019 in the media library, e.g., 78. The asset count reference 512 mayalso indicate a chronological order for the shown asset within the totalnumber of assets in an example, e.g., 5, indicating that the asset shownis the 5^(th) asset captured in January. In another example, the assetcount reference 512 may indicate numbers for a single day of January inwhich the asset shown was captured rather than overall month numbers.The asset count reference 512 as shown in month view 500 is just oneexample of how information may be relayed to a user, and many otherpossibilities are available for providing information about the assetsavailable in the media library for each particular month. Moreover, inan approach, selection of asset count reference 512 may open a day viewwith a focus on the key asset for January 2019.

Ribbon element 210 may be shown in month view 500 to indicate that thecurrent view is month view 500 by highlighting Month label 214 in anexample. Ribbon element 210 may also be configured to receive user inputto navigate to another view using one of the labels (e.g., Year label212, Day label 216, All label 218). Day views may include bothindividual day cards and aggregation cards when appropriate.

FIG. 6A shows an example year view 600 for the media library applicationfocusing on a year card 602. This view 600 may be used to display one ormore key assets 608 associated with the particular year (e.g., 2018). Inone approach, one or more particular months (e.g., April, June, July,December) of a particular year (2018 for example) may have key assets608 displayed for year card 602.

Year card 602 may include a timeframe reference 604 (indicating the yearas “2018”) and/or one or more contextual descriptions 606. In thisexample, each contextual description 606 may indicate a month from whicha key asset 608 is derived. In other examples, contextual descriptions606 may include a description of an event or activity of thecorresponding key asset 608.

An optional contextual description may be displayed at all times, oronly when a user is interacting with, has selected, or otherwisefocusses on a particular key asset of year card 602, in variousexamples. Any type of user input may be used to determine interest in aparticular key asset, such as hovering over the key asset with a mousecursor, finger hovering over the key asset using a touchscreen, touchand hold input, etc.

The choice of which key assets 608 to show on year card 602 and whichassets to hide from the year view 600 may be based on several factors.In one example, an asset count reference 614 may be included on yearcard 602 which indicates a total number of assets that exist for 2018 inthe media library, e.g., 1043. The asset count reference 614 may alsoindicate a chronological order for the shown asset within the totalnumber of assets in an example, e.g., 456, indicating that the assetshown is the 456^(th) asset captured in the year 2018. In anotherexample, the asset count reference 614 may indicate numbers for themonth of April rather than overall year numbers. The asset countreference 614 as shown in year view 600 is just one example of howinformation may be relayed to a user, and many other possibilities areavailable for providing information about the assets available in themedia library for each particular year and month. Moreover, in anapproach, selection of asset count reference 614 may open a day view ora month view with a focus on the key asset for January 2019.

Ribbon element 210 may be shown in year view 600 to indicate that thecurrent view is year view 600 by highlighting Year label 212 in anexample. Ribbon element 210 may also be configured to receive user inputto navigate to another view using one of the labels (e.g., Month label214, Day label 216, All label 218). Day views may include bothindividual day cards and aggregation cards when appropriate.

In an example, key asset(s) 608 displayed for year card 602 may beselected from key assets of months for year 2018. Because key assets 608shown for year card 602 are selected from key assets for months in theparticular year represented by year card 602 (e.g., 2018), and not allmonths may have key assets, as discussed previously, not every month inyear 2018 may be shown on year card 602 in this example.

In an example, one key asset for each month in 2018 (the yearrepresented for year card 602) that has a key asset may be displayed, inan approach, with each key asset 608 shown being determined to be thebest asset to represent the corresponding month (e.g., most likely to beimportant, desirable, memorable, aesthetically pleasing, etc.).

In one approach, a curation score that is used to determine key assetmay be based on significant event(s) within a respective month thatwould be important to the user. For example, if January is the birthmonth for Mary's son Trevor, then one or more key assets shown on amonth card for January may be of Trevor's birthday in a previous year,or possibly images of Trevor in general to reflect that January is hisbirth month. When multiple important people (family, friends, etc.) havebirthdays in the same month, group shots of the people who share thebirthday month may be selected preferentially as a key asset. Of course,other memorable, nostalgic, and important events may be reflected in keyassets as would be understood by one of skill reading the presentdescriptions.

The single key asset 608 for each month may be selected from key assetsof the particular month based on curation scores of the various keyassets. A key asset which attains a highest curation score for aparticular month may be selected as the key asset 608 to represent thatmonth, in one approach.

In another approach, a threshold curation score may be determined, andthis threshold curation score may be compared to curation scorescalculated for key assets for each month in the year. The thresholdcuration score may be dynamically determined to only select a certainpercentage of assets to be key assets (e.g., a top 10%, 6%, 2%, 1%,0.6%, etc.). All curated assets that have a curation score greater thanor equal to the threshold curation score may be considered a key assetfor the month in this approach.

In an example, determining which key assets 608 to display for aparticular month may include randomly selecting one or more key assetsfrom amongst all key assets for a particular month and displaying theseselected key assets for the particular month on year card 602. Each timeyear card 602 is navigated to by a user, another one or more key assetsmay be randomly selected and displayed in each of the month(s) displayedto year card 602. In this way, year card 602 may dynamically change eachtime it is navigated to, but still displays only key assets for monthsrepresented in the year which are most likely to be the best assetstaken from the various months.

In another approach, only a single key asset may be displayed on yearcard 602. The key asset 608 chosen to represent year card 602 may beselected to be a key asset from the particular year (e.g., 2018) thathas a timestamp most similar to a current date. For example, if today'sdate is Apr. 30, 2019, then the key asset 608 used to represent yearcard 602 for 2018 may be a key asset for the month of April 2018preferentially, or the month of May 2018 if a key asset for April 2018does not exist. Should no key asset exist for May 2018, then a key assetfrom another month in 2018 may be selected based on a proximity of atimestamp for the key asset and the current date, in one example.

A curation score for a particular curated asset may be determined basedon one or more factors. Example factors used to determine a curationscore include, but are not limited to, a global aesthetic, a number ofshares for the particular asset, a number of views for the particularasset, a number of persons identified in the particular asset, a size ofa grouping of assets that includes the particular asset, an imputedmeaning for the particular asset, etc. An example process fordetermining key assets is described in more detail in FIG. 11 .

Referring again to FIG. 6A, because year card 602 for 2018 does not fillthe entire GUI, the year view 600 also displays year card 610 below(after) year card 602. The portion of year card 610 that is visibledisplays key assets 612 for the next year, 2019.

For Mary in the previous example, she may be able to see her favoritephoto of Trevor and his birthday cake from his third birthday party in2013 represented on a year card for 2013 whenever the current date isclose to Trevor's birthday. The promotion of Trevor's birthday photo maybe due to that photo receiving a high curation score based on the numberof times that Mary has viewed the photo, a number of times she sharedthe photo, knowledge that the photo is of a birthday (imputed meaning ofthe photo), etc. Moreover, because that photo would qualify as a keyasset, it may also be featured prominently on a month card for Trevor'sbirthday month in 2013 in one approach.

FIG. 6B shows another example year view 616 for the media libraryapplication. In year view 616, each year is represented by a single yearcard with a single key asset prominently displayed to the year card. Forexample, year card 618 for 2015 displays a key asset 620 for April ofthat year, 2015, while year card 622 for 2016 displays a key asset 624for April of that year, 2016. In this example, the key assets 620, 624are both selected from the month of April in response to a present datebeing in April, so that each year card 618, 622 show key assets fromsimilar time frames in past years 2015, 2016.

In another approach, even when year view 616 displays a single asset foreach year, the assets selected to be displayed may be from differenttime periods within the respective years.

Transitions

FIG. 7 shows an example transition from a year view 700 to a month view714. In this example, year view 700 displays year card 704 for 2017 andindicates that a current view is a year view by highlighting Year label212 on ribbon element 210. Key assets from select months are representedon year card 704. In addition, a timeframe reference 708 is included foryear card 704 that indicates the card is for the year “2017.” Each ofthe key assets for the various months are indicated with contextualdescriptions 706 indicating which month the key asset represents.

Moreover, as shown in year view 700, key asset 702 is the focus of theview, as indicated by the bold frame surrounding the asset. Any otherway of indicating the focus of the view 700, including not visuallyindicating a focus at all, may be used as would be understood by one ofskill in the art. Key asset 702 may be selected as the focus in responseto user input 712 selecting key asset 702, or some other way ofdetermining a focus of a current view, such as determining that an assetlocated near a center of a current view is the focus, in one approach.Any other way of determining a focus of a current view may be used inmore approaches, as would be understood by one of skill in the art.

In one approach, a user may select Month label 214 from ribbon element210 with user input 710. Any type of user input 710 may be used toselect Month label 214, such as a mouse hover, mouse click, touch inputon a touchscreen display, stylus input on a tablet, remote control,trackpad input on a laptop computer, etc. In response to user inputselecting Month label 214, the GUI may transition to month view 714 thatmaintains focus on key asset 702.

In another approach, a user may select a key asset 702 from year card704 with a user input 712. Any type of user input 712 may be used toselect key asset 702, such as a mouse hover, mouse click, touch input ona touchscreen display, stylus input on a tablet, remote control,trackpad input on a laptop computer, etc. In response to user inputselecting key asset 702, the GUI may transition to month view 714 thatmaintains a focus on key asset 702.

By maintaining focus on a particular asset, what is meant, in anexample, is that after transitioning to a new view, the particular assetis prominently featured in the new view (e.g., the largest assetdisplayed, presented with a bold or highlighted frame, pre-selected whenthe view is loaded, etc.). In another example, the particular asset isdisplayed to the new view, but not necessarily prominently featured.

As shown in month view 714, in one example, month card 720 for April2017 is shown, with the current view being indicated as a month view byhighlighting Month label 214 on ribbon element 210. Select key assetsare represented on month card 720, included key asset 702, which was thefocus of year view 700. In addition, a timeframe reference 716 isincluded for month card 720 that indicates the card is for the month“April 2017.” Also, a contextual description 718 is included for monthcard 720 that indicates the key asset 702 relates to “Easter.” Monthview 714 also displays a portion of the next month card 722 for May2017.

This transition from year view 700 to month view 714 that maintainsfocus on key asset 702 provides a convenient way for a user to drilldown through levels of the media library to arrive at photos, videos,and other assets from a specific period of time related to a key asset702 prominently displayed at higher levels (e.g., year view 700). Inthis way, a user may access additional assets related to key asset 702and/or other assets obtained at a time frame similar to key asset 702based on interaction with higher levels of the media library thatdisplay key asset 702.

FIG. 8 shows an example transition from a month view 800 to a day view820. In this example, month view 800 displays month card 804 for 2017and indicates that a current view is a month view by highlighting Monthlabel 214 on ribbon element 210. Key assets from April 2017 arerepresented on month card 804. In addition, a timeframe reference 806 isincluded for month card 804 that indicates the card is for the month“April 2017.” One of the key assets 802 for April 2017 is indicated witha contextual description 808 indicating that the key asset 802 isrelated to “Spring Break.”

Moreover, as shown in month view 800, key asset 802 is the focus of theview, as indicated by the bold frame surrounding the asset. Key asset802 may be selected as the focus in response to user input 812 selectingkey asset 802, or some other way of determining a focus of a currentview, such as determining that an asset located near a center of acurrent view is the focus, in one approach. Any other way of determininga focus of a current view may be used in more approaches, as would beunderstood by one of skill in the art.

In one approach, a user may select Day label 216 from ribbon element 210with user input 810. Any type of user input 810 may be used to selectDay label 216, such as a mouse hover, mouse click, touch input on atouchscreen display, stylus input on a tablet, remote control, trackpadinput on a laptop computer, etc. In response to user input selecting Daylabel 216, the GUI may transition to day view 820 that maintains focuson key asset 802.

In another approach, a user may select key asset 802 from month card 804with a user input 812. Any type of user input 812 may be used to selectkey asset 802, such as a mouse hover, mouse click, touch input on atouchscreen display, stylus input on a tablet, remote control, trackpadinput on a laptop computer, etc. In response to user input selecting keyasset 802, the GUI may transition to day view 820 that maintains a focuson key asset 802.

As shown in day view 820, in one example, aggregation card 812 for Apr.17-21, 2017 is shown, with the current view being indicated as a dayview by highlighting Day label 216 on ribbon element 210. Thisaggregation card shows a trip that spanned several consecutive days, inthis particular case it was Spring Break in 2017. Select key assets arerepresented on aggregation card 812, including key asset 802, which wasthe focus of month view 800. In addition, a timeframe reference 814 isincluded for aggregation card 812 that indicates the card is formultiple consecutive days of “Apr. 17-21, 2017.” Also, a contextualdescription 816 is included for aggregation card 812 that indicates thekey asset 802 and/or aggregation card 812 relate to “Spring Break.” Dayview 820 also displays a portion of the next day card 818 for Apr. 22,2017. In day card 818, one of the key assets is indicated as beingrelated to a “Jets Game” which may have taken place on Apr. 22, 2017.

This transition from month view 800 to day view 820 that maintains focuson key asset 802 provides a convenient way for a user to drill downthrough levels of the media library to arrive at photos, videos, andother assets from a specific period of time related to a key asset 802prominently displayed at higher levels (e.g., month view 800). In thisway, a user may access additional assets related to key asset 802 and/orother assets obtained at a time frame similar to key asset 802 based oninteraction with higher levels of the media library that display keyasset 802.

FIG. 9 shows an example transition from a day view 900 to an all assetsview 920. In this example, day view 900 displays day card 908 for May 5,2017 and indicates that a current view is a day view by highlighting Daylabel 216 on ribbon element 210. Curated assets from May 5 arerepresented on the day card 908. In addition, a timeframe reference 904is included for day card 908 that indicates the card is for “May 5,2017.” A largest curated asset for this day is indicated with acontextual description 906 indicating that the curated assets arerelated to “Cinco de Mayo.”

Day view 900 also displays an aggregation card 910 following day card900, with a timeframe reference 912 indicating the aggregation period is“May 10-12, 2017” and a contextual description 914 indicates this timeframe related to “Tahoe Cabin,” most likely a trip to Lake Tahoe, Calif.where the user stayed at a cabin by the lake.

Moreover, as shown in day view 900, curated asset 902 is the focus ofthe view, as indicated by the bold frame surrounding the asset. Curatedasset 902 may be selected as the focus in response to user input 918selecting curated asset 902, or some other way of determining a focus ofa current view, such as determining that an asset located near a centerof a current view is the focus, in one approach. Any other way ofdetermining a focus of a current view may be used in more approaches, aswould be understood by one of skill in the art.

In one approach, a user may select All label 218 from ribbon element 210with user input 916. Any type of user input 916 may be used to selectAll label 218, such as a mouse hover, mouse click, touch input on atouchscreen display, stylus input on a tablet, remote control, trackpadinput on a laptop computer, etc. In response to user input selecting Alllabel 218, the GUI may transition to all assets view 920 that maintainsfocus on curated asset 902.

In another approach, a user may select curated asset 902 from day card908 with user input 918. Any type of user input 918 may be used toselect curated asset 902, such as a mouse hover, mouse click, touchinput on a touchscreen display, stylus input on a tablet, remotecontrol, trackpad input on a laptop computer, etc. In response to userinput selecting curated asset 902, the GUI may transition to all assetsview 920 that maintains a focus on curated asset 902.

By maintaining focus on a particular asset, all assets view 920 isscrolled to a location showing the particular asset after the transitionto the new view. As shown in all assets view 920, in one example,curated asset 902 is shown in a center of the display, and ribbonelement 210 shows that the current view is all assets view 920 byhighlighting All label 218 and no longer highlighting Day label 216.

All assets view 920 displays every asset of the media library inchronological order, including assets that were filtered out of higherlevel views (e.g., day views, month views, year views) due to suchassets including undesirable content, such as being blurry or out offocus, being directed to a utility purpose (photos of receipts, data andinformation, whiteboards, drawings and sketches, shopping lists,reminder lists, screenshots, etc.), being substantially duplicative ofother curated assets promoted to the higher level views, etc.

This transition from day view 900 to all assets view 920 that maintainsfocus on curated asset 902 provides a convenient way for a user to drilldown through levels of the media library to arrive at photos, videos,and other assets from a specific period of time related to a key asset902 prominently displayed at higher levels (e.g., day view 900). In thisway, a user may access additional assets related to key asset 902 and/orother assets obtained at a time frame similar to key asset 902 based oninteraction with higher levels of the media library that display keyasset 902, particularly if such assets are only displayed in all assetsview 920 due to content included therein. However, a user does not needto scroll through junk images and videos, blurry images or videos,utility pictures or videos, and/or duplicated images or videos at higherlevels of the media library because such assets are only displayed inall assets view 920 in an approach.

Example Processes

To enable the reader to obtain a clear understanding of thetechnological concepts described herein, the following processesdescribe specific steps performed in a specific order. However, one ormore of the steps of a particular process may be rearranged and/oromitted while remaining within the contemplated scope of the technologydisclosed herein. Moreover, different processes, and/or steps thereof,may be combined, recombined, rearranged, omitted, and/or executed inparallel to create different process flows that are also within thecontemplated scope of the technology disclosed herein. Additionally,while the processes below may omit or briefly summarize some of thedetails of the technologies disclosed herein for clarity, the detailsdescribed in the paragraphs above may be combined with the process stepsdescribed below to get a more complete and comprehensive understandingof these processes and the technologies disclosed herein.

FIG. 10 is a flow diagram of an example process 1000 for curating assetsof a media library. Assets of a media library may be curated usingmethod 1000 for any of the example views described in FIGS. 2-6B.

Referring again to FIG. 10 , in operation 1002, substantially duplicateassets (e.g., images which are substantially similar to other images,videos which are substantially similar to other videos) are identifiedin a media library. Any method of determining a similar or duplicativeimage or video may be used, such as filename and size comparison, apixel-by-pixel analysis, performing a hash of file contents for twodifferent files and comparing the hash outcomes, etc.

By substantially similar, what is meant is that a primary focus andintent of the asset is the same for each of the similar assets, eventhough subtle differences may exist in the actual images or videos. Forexample, a sunset that is captured using burst mode may have three ormore images of the same sunset captured in a very short period of time.In the curated assets, it is desirable to only include one of thosesunset images, and particularly desirable to include the best of thosesunset images.

In one approach, which is the best asset from a series of substantiallysimilar assets may be determined based on a number of factors. Thefactors for this determination may include an aesthetic score (asdescribed later), a number of times the asset has been shared by theuser, and a number of times the user has viewed the asset. Otherrelevant factors may be used in place of or in conjunction with any ofthese identified factors, in other examples.

As a result of operation 1002, duplicative assets may be filtered outfrom the other assets in the media library.

In operation 1004, assets of poor quality are identified in the medialibrary. Poor quality may indicate any of a number of characteristicsfor individual assets, such as assets that appear blurry, washed out oroverexposed, too dark or underexposed, etc. In addition, assets thatappear to be accidently captured, such as a photo in a user's pocket,may also be identified.

After identifying all of the assets exhibiting poor quality, as a resultof operation 1004, these poor quality assets may be filtered out fromthe other assets in the media library.

In operation 1006, assets being directed to a utility purpose areidentified in the media library. A utility purpose indicates that theasset was obtained to serve a certain non-aesthetic purpose, as would beunderstood by one of skill in the art. Some examples of assets directedto a utility purpose include, but are not limited to, photo of areceipt, photo of a whiteboard showing notes from a meeting,instructional video of a technique for performing a certain activity(like sharpening a knife, decorating a cake, etc.), photo of documentsor papers, photo of drawings or sketches, photo of a shopping list,photo of a reminder, a screenshot, etc.

After identifying all of the utility assets, as a result of operation1006, these utility assets may be filtered out from the other assets inthe media library.

After operations 1002, 1004, and 1006, the remaining assets of the medialibrary which have not been filtered out may be referred to as firstcurated assets. The operations 1002, 1004, and 1006 may be performed inany order in method 1000, and one or more of operations 1002, 1004, and1006 may be omitted in certain approaches.

FIG. 11 is a flow diagram of an example process 1100 for determining keyassets of a media library. Key assets of the media library may bedetermined using method 1100 from amongst curated assets determinedusing method 1000 for any of the example views described in FIGS. 2-6B.

Referring again to FIG. 11 , in operation 1102, a curation score foreach asset in a set of assets (the set of assets may include all firstcurated assets of a media library in one approach) is determined.

The curation score may be determined based on one or more factors.Example factors may include, but are not limited to, a global aesthetic,an aesthetic score for the particular asset, a number of shares for theparticular asset, a number of views for the particular asset, a numberof persons identified in the particular asset, a size of a grouping ofassets that includes the particular asset, an imputed meaning for theparticular asset, etc.

A global aesthetic describes a highest aesthetic score possible using analgorithm or set of algorithms, and represents anoptimally-aesthetically pleasing image or series of images (in the caseof a video) as determined by experts in the field. The global aestheticscore may be compared to individual aesthetic scores calculated forindividual assets to determine how far from the global standard theparticular assets rate. To accomplish this comparison, an aestheticscore is calculated for each of the assets individually using the samealgorithm or set of algorithms used to calculate the global aesthetic.Then, a determination is made as to a difference between the globalaesthetic and the individual aesthetic for each asset.

In one approach, only assets which achieve an aesthetic score meeting acertain threshold may be considered for further processing, whileunaesthetically pleasing assets may be dropped from consideration. In adifferent approach, the individual aesthetic score may be used in aweighted overall analysis of the particular asset.

The weighted overall analysis may assign a certain weight to severaldifferent factors, then weight-average the factors together to achieve aweighted curation score for the particular asset. Any way of determiningspecific weights for the various factors may be used, as would be knownto one of skill in the art.

In an example, a photo which has been shared by a user to many otherpeople over the past two weeks may indicate that the user really likesthe photo and would like to see it more often. Therefore, a weightedoverall analysis for a particular asset may consider how many times theparticular asset has been shared by the user. This determination mayfurther be limited to a certain recent timeframe to remove the influenceof past proclivities of the user which may not reflect currentinclinations.

In another example, a photo which has been viewed by a user repeatedlyover the past two weeks may indicate that the user really likes thephoto and would like to see it more often. Therefore, a weighted overallanalysis for a particular asset may consider how many times theparticular asset has been viewed by the user. This determination mayfurther be limited to a certain recent timeframe to remove the influenceof past proclivities of the user which may not reflect currentinclinations.

In another example, a photo with many family members shown may be morefavorable to a user than a photo which does not include any faces or aphoto with only one friend. Therefore, a weighted overall analysis for aparticular asset may consider how many persons can be identified in theparticular asset (e.g., how many faces are recognized by facialrecognition software, and possibly a relationship of these persons tothe user).

In another example, a user may take many photos at a concert or on atrip because the user wants to capture and remember this time. All ofthese photos may be grouped together based on them being from the sameevent (the concert) or from the same trip. Therefore, a weighted overallanalysis for a particular asset may consider a size of a grouping ofassets that includes the particular asset.

In another example, special occasions and events typically mean more toa user than random photos not attached to a special event or time in auser's life. Therefore, a weighted overall analysis for a particularasset may consider an imputed meaning for the particular asset.Metadata, tie of creation, persons shown in the asset, and any otherrelevant characteristics of the assets may be used to determine themeaning of the particular asset. Some example meanings include, but arenot limited to, birthdays, weddings, anniversaries, birth of children,graduations, trips, religious events, etc.

In operation 1104, key assets from the set of assets are determinedbased on the curation scores of the set of assets.

In one approach, any asset which achieves a weighted average across allfactors (e.g., a curation score) that meets a certain threshold may beconsidered a second curated asset or key asset, while assets which donot meet the weighted average threshold are not key assets and remainjust first curated assets.

In another example, a curated asset which attains a highest curationscore for a particular timeframe (e.g., a day, a week, a month, a year)may be selected as the key asset to represent that timeframe.

In another example, a threshold curation score may be determined, andthis threshold curation score may be compared to curation scorescalculated for curated assets for a particular timeframe (e.g., a day, aweek, a month, a year). The threshold curation score may be dynamicallydetermined to only select a certain percentage of assets to be keyassets (e.g., a top 10%, 5%, 2%, 1%, 0.5%, etc.). All curated assetsthat have a curation score greater than or equal to the thresholdcuration score may be considered a key asset for the particulartimeframe (e.g., a day, a week, a month, a year) in this approach.

FIG. 12 is a flow diagram of an example process 1200 for selecting anddisplaying assets of a media library. Assets of a media library may beselected and displayed using method 1200 for any of the example viewsdescribed in FIGS. 2-6B. In an approach, example assets that may beincluded in the media library include, but are not limited to, stillimages, videos, animated images, composite presentations, panoramicimages, etc.

Referring again to FIG. 12 , in operation 1202, a computing device maygenerate first cards (e.g., day cards, aggregation cards). Each firstcard may represent a respective different day or aggregation of days tobe displayed in a day view of a GUI in chronological order. In oneexample, a day view may include multiple day cards for a single day inresponse to multiple types of events being captured on the same day. Inthis example, assets captured at a user's work location, assets capturedat a user's home location, assets captured during a trip outside of auser's locale area, and assets captured for any other events may bedisplayed on separate cards for the same day in which they are captured.Other event types may be used to determine how to separate assetscaptured in a same day as would be apparent to one of skill in the artupon reading the present disclosures.

Moreover, each day card may include first curated assets (e.g., filteredassets) from a media library that has many assets, with each first cardrepresenting a respective single day or an aggregation of consecutivedays. The filtered assets may be derived from a curation process, suchas example process 1000 shown in FIG. 10 .

An aggregation of days may be shown on a day card in day view when theassets are captured during a trip over several days, or there areinsufficient assets available for display for one or more days in theaggregation of days.

In one approach, filtered assets do not include duplicate images andvideos, junk assets (blurry, unrecognizable content, pocket photos, lowlight, washed out, etc.), and utility assets, as described in moredetail previously. The filtered assets are those assets of the medialibrary that remain after filtering out undesired assets.

Returning to FIG. 12 , in operation 1204, the computing device maygenerate second cards (month cards) representing respective differentmonths to be displayed in a month view of the GUI in chronologicalorder. Each month card may include second curated assets (key assets)selected from one of the day cards that represents a day or anaggregation of consecutive days in a corresponding month. The key assetsmay be derived from a curation process, such as example process 1100shown in FIG. 11 .

Returning to FIG. 12 , in operation 1206, the computing device maygenerate third cards (year cards) representing respective differentyears to be displayed in a year view of the GUI in chronological order.Each year card may include one or more key assets selected from one ofthe month cards that represents a month in a corresponding year. Therepresented month in the corresponding year may be selected to benearest to a current month, so that each time a user views the yearview, the image(s), video(s), or other asset(s) that are shown relate tothe current date, and may change daily to keep the interface lookingfresh for the user.

In operation 1208, the GUI may be presented on a display of thecomputing device. The GUI may show any of the particular views, and inone example, the GUI may show the year view of a particular year cardcorresponding to a particular year.

In operation 1210, a first user input selecting a particular key assetpresented on the particular year card may be received by the computingdevice. This first user input may be direct selection of the particularkey asset, or an inferred selection of the key asset based on a positionof the key asset in the GUI when a different label is selected to directthe GUI to change views.

In operation 1212, in response to the first user input, the computingdevice may present a transition from the year view to the month viewwhile maintaining a focus on the particular key asset. Keeping a focusof the current view on the selected key asset includes displaying thekey asset after the transition to the next view, and/or showing agrouping of assets that includes the selected key asset after thetransition (even if the selected key asset is not shown in the GUI, butis accessible through selection of one of the assets shown from thegrouping).

In operation 1214, in response to the transition, the computing devicepresents the GUI showing the month view of a particular month card thatdisplays the particular key asset (or at least represents a time framewhen the particular key asset was captured). The particular month cardcorresponds to a particular month of the particular year.

In another approach, a video may be automatically played (e.g., in aloop or only one or two times) in response to the video being displayedin the GUI. In this way, every time a view of the GUI includes a video,the video is automatically played to provide interest in the view,instead of simply presenting a still image taken from the video.

Similarly, in an approach, an animated image may be automatically played(e.g., in a loop or only one or two times) in response to the animatedimage being displayed in the GUI. In this way, every time a view of theGUI includes an animated image, the animated image is automaticallyplayed to provide interest in the view, instead of simply presenting astill image taken from the animated image.

In one example, the GUI may include a ribbon element that includes oneor more labels to other views available in the GUI. For example, theribbon element may include labels to an all assets view, a month view, ayear view, and a day view. Each label, when selected, causes the GUI toshow a particular card associated with the label in an appropriate viewto the GUI, e.g., month cards are shown in month view, day cards areshown in day view, etc. The ribbon element may be selectively positionedalong a top, a bottom, or one of the sides of the GUI, it may auto-hidefrom view when not in use, and it may have a transparent background, anopaque background, or a semi-transparent background. Moreover, thevarious labels may include textual descriptors, graphics, or acombination of a graphic and text to distinguish what the labelrepresents.

In one example, the first user input may be selection of one of thelabels in the ribbon element.

In another example, the plurality of assets of the media library may befiltered to produce the first curated assets (e.g., filtered assets).This filtering of assets in the media library may cause removal ofduplicate assets, assets of poor quality, and assets having a utilitypurpose in an approach.

To determine which assets to show in some of the views (e.g., year view,month view) and which assets to show larger in some of the views (e.g.,year view, month view, day view), curation scores may be determined forthe filtered assets (e.g., the first curated assets left after filteringout junk, duplicates, and utility assets). In another approach, keyassets (e.g., second curated assets) may be determined based on curationscores of the plurality of filtered assets.

A curation score for a particular asset may be based on one or more ofthe following factors: a global aesthetic, a number of shares for theparticular asset, a number of views for the particular asset, a numberof persons identified in the particular asset, a size of a grouping ofassets that includes the particular asset, and an imputed meaning forthe particular asset. These factors may be combined together to form anoverall curation score for a particular asset with equal weighting, oraccording to a weighting scheme which causes one or more of the(high-weighted) factors to influence the overall curation score morethan other (low-weighted) factors.

In another approach, key assets for the month and year views may bedetermined based on behavioral curation of the assets in the medialibrary. In this approach, past behavior of a user of the media librarymay be used to determine preferences of the user for managing assets ofthe media library, determining which assets to display more prominently(e.g., larger than other assets on a card), which assets to demote frommost views (e.g., filter out from year, month, and day views), etc.

In an additional approach, relationship information for the user may beused in determining which assets are more likely to be viewed favorablyby the user. Relationship information may be used to determine whopersons that are identified in photos and videos are to the user, forexample, mother, father, sister, brother, child, etc. Assets whichinclude family members may be more important to the user than imagesthat do not include family. Similarly, friends may be determined fromphotos and videos based on a frequency of the person appearing in assetsof the media library, how the user treats assets with a particularperson in it (e.g., multiple views, multiple shares with one or morecontacts who may be the person in the asset, etc.).

In another approach, a knowledge graph may be used to help determine keyassets for the media library. The knowledge graph may correlate assetsand metadata associated with the assets in the media library with theuser, stored data and metadata for contacts of the user, relationshipinformation for the user, locations, timeframes, and other informationavailable to determine connections between data.

A knowledge graph metadata network associated with the assets stored tothe media library may be generated. The metadata network may comprisecorrelated metadata assets describing characteristics associated withthe assets of the media library. Each metadata asset may describe acharacteristic associated with one or more assets in the media library.In a non-limiting example, a metadata asset may describe acharacteristic associated with multiple images and/or videos in themedia library. Each metadata asset may be represented as a node in themetadata network, and may be correlated with at least one other metadataasset (node). Each correlation between metadata assets may berepresented as an edge in the metadata network that is positionedbetween the nodes representing the correlated metadata assets. By usingsuch a vast knowledge graph metadata network to describe the connectionsbetween assets, the user, contacts of the user, locations, timeframes,etc., key assets may be more carefully determined that represent imagesand people that a user would want to see more prominently in the medialibrary and that may be used to locate timeframes to search for otherassets in lower levels of the media library.

For example, a photo of a group of people may not be aestheticallypleasing with respect to the global aesthetic, but it may be commonlyviewed by the user, put on wallpaper of a laptop by the user, and sentvia text message to a group of contacts who are recognized as being inthe photo. This photo, even if it does not have a high curation scoremay ultimately be considered a key asset based on the behavior of theuser with respect to the photo, and may be prominently displayed oncards for timeframes in which the photo was captured because it is a keyasset.

In an approach, the GUI may be presented showing the day view of aparticular day card (in response to user input selecting a day view). Asize of at least one filtered asset displayed in the particular day cardmay be larger than other filtered assets displayed in the particular daycard based on the curation score of the at least one filtered asset. Inother words, a filtered asset that is chosen to be a key asset may beshown larger than other filtered assets for a particular day.

In this approach, second user input selecting a filtered asset displayedto the particular day card may be received by the computing device. Inresponse to receiving the second user input, the computing device maypresent a transition from the day view to an all assets view thatmaintains a focus on the filtered asset. Also, in response to thetransition, the computing device may present the GUI showing the allassets view of a portion of the plurality of assets of the media librarysorted chronologically to allow a user to easily navigate through levelsof the media library in an intuitive manner. In this view, sizes of allassets currently displayed in the GUI may be substantially equal. Theuser may navigate through this view to access all assets stored to themedia library, regardless of the content and quality of the asset (e.g.,the assets are unfiltered).

According to an example, the particular month card may be limited todisplaying up to five key assets selected from different weeks of aparticular month that is represented by the particular month card. Eachkey asset displayed in the month card may be selected based on curationscores of filtered assets for day cards that represent days in theparticular month. In this example, second user input selecting a certainkey asset displayed to the month card may be received, and in responseto the second user input, the computing device may present a transitionfrom the month view to the day view that maintains a focus on thecertain key asset. Thereafter, in response to the transition, thecomputing device may present the GUI showing the day view of aparticular day card which includes the certain key asset to allow a userto easily navigate through levels of the media library in an intuitivemanner.

In one approach, each key asset displayed in the particular year cardmay be selected based on one or more factors. The factors may include,but are not limited to, curation scores of key assets for month cardsthat represent months in the particular year represented by theparticular year card, and a similarity between a current date and atimestamp of the key assets for the month cards that represent themonths in the particular year.

FIG. 13 is a flow diagram of an example process 1300 for selecting anddisplaying assets of a media library. Assets of a media library may beselected and displayed using method 1300 for any of the example viewsdescribed in FIGS. 2-6B. In an approach, example assets that may beincluded in the media library include, but are not limited to, stillimages, videos, animated images, composite presentations, panoramicimages, etc.

Referring again to FIG. 13 , in operation 1302, a computing device maygenerate a day view of first cards (e.g., day cards and/or aggregationcards) to be displayed in a GUI in chronological order. Each day cardmay include first curated assets (e.g., filtered assets) representing arespective single day or aggregation of consecutive days. In oneexample, a day view may include multiple day cards for a single day inresponse to multiple types of events being captured on the same day.

In this example, filtered assets captured at a user's work location,filtered assets captured at a user's home location, filtered assetscaptured during a trip outside of a user's locale area, and filteredassets captured for other event types (dinners, parties, etc.) may bedisplayed on separate day cards for the same day (the day in which theyare captured). Other event types may also be used in determining how toseparate filtered assets captured in a same day, as would be apparent toone of skill in the art upon reading the present disclosures.

Moreover, the filtered assets may be derived from a curation process,such as example process 1000 shown in FIG. 10 .

An aggregation of filtered assets from multiple consecutive days may beshown on an aggregation card in day view when the filtered assets arecaptured during a trip over several days, or there are insufficientassets available for display for one or more days in the aggregation ofdays.

In one approach, filtered assets do not include duplicate images andvideos, junk assets (blurry, unrecognizable content, pocket photos, lowlight, washed out, etc.), and utility assets, as described in moredetail previously. The filtered assets are those assets of the medialibrary that remain after filtering out undesired assets.

Returning to FIG. 13 , in operation 1304, the computing device maygenerate a month view of second cards (month cards) representingrespective different months to be displayed in the GUI in chronologicalorder. Each month card may include second curated assets (key assets)selected from one of the day cards that represents a day or anaggregation of consecutive days in a corresponding month. The key assetsmay be derived from a curation process, such as example process 1100shown in FIG. 11 .

Returning to FIG. 13 , in operation 1306, the computing device maygenerate a year view of third cards (year cards) representing respectivedifferent years to be displayed in the GUI in chronological order. Eachyear card may include one or more key assets selected from one of themonth cards that represents a month in a corresponding year. Therepresented month in the corresponding year may be selected to benearest to a current month, so that each time a user views the yearview, the image(s), video(s), or other asset(s) that are shown relate tothe current date, and may change daily to keep the interface lookingfresh for the user.

In operation 1308, the GUI showing at least a portion of a certain card(e.g., a day card, aggregation card, month card, or year card) may bepresented in a corresponding view (day view, month view, or year view)on a display of the computing device. The GUI may show a portion, anentirety, or multiple cards of any one type.

In operation 1310, input selecting a current card to replace the certaincard already displayed to the GUI may be received by the computingdevice. This input may be direct selection of a particular assetdisplayed to the certain card, or an inferred selection of theparticular asset based on a position of the key asset in the GUI when adifferent label is selected to direct the GUI to change views.

In operation 1312, in response to the input, the computing device mayswitch the GUI to show the current card while maintaining a focus on theparticular asset from the certain card. Keeping a focus of the currentcard on the particular asset includes displaying the particular assetafter the transition to the current card, and/or showing a grouping ofassets that includes the particular asset after the transition (even ifthe particular asset is not shown in the GUI, but is accessible throughselection of one of the assets shown from the grouping).

In one approach, a video may be played (e.g., in a loop or only one ortwo times) in response to the video being displayed in the GUI. In thisway, every time a view of the GUI includes a video, the video isautomatically played to provide interest in the view, instead of simplypresenting a still image taken from the video.

Similarly, in an approach, an animated image may be played (e.g., in aloop or only one or two times) in response to the animated image beingdisplayed in the GUI. In this way, every time a view of the GUI includesan animated image, the animated image is automatically played to provideinterest in the view, instead of simply presenting a still image takenfrom the animated image.

In one example, the GUI may include a ribbon element that includes oneor more labels to other views available in the GUI. For example, theribbon element may include labels to an all assets view, a month view, ayear view, and a day view. Each label, when selected, causes the GUI toshow a particular card associated with the label in an appropriate viewto the GUI, e.g., month cards are shown in month view, day cards areshown in day view, etc. The ribbon element may be selectively positionedalong a top, a bottom, or one of the sides of the GUI, it may auto-hidefrom view when not in use, and it may have a transparent background, anopaque background, or a semi-transparent background. Moreover, thevarious labels may include textual descriptors, graphics, or acombination of a graphic and text to distinguish what the labelrepresents.

In one example, the input may be selection of one of the labels in theribbon element that causes the GUI to display a card that corresponds tothe view of the selected label representing one or more assets from atime frame relevant to the current card.

To determine which assets to show in some of the views (e.g., year view,month view) and which assets to show larger in some of the views (e.g.,year view, month view, day view), curation scores may be determined forthe filtered assets (e.g., the first curated assets left after filteringout junk, duplicates, and utility assets). In another approach, keyassets (e.g., second curated assets) may be determined based on curationscores of the plurality of filtered assets.

Any method or technique for determining key assets to display to themonth and year view may be used, as described herein, or known to thoseof skill in the art.

In an approach, the current card may be a particular day card, where asize of at least one filtered asset displayed in the particular day cardis larger than other filtered assets displayed in the particular daycard based on a curation score of the filtered assets. Assets whichachieve higher curations scores may be considered key assets in someapproaches, and displayed more prominently in on their respective daycards.

In response to receiving input selecting a filtered asset displayed tothe particular day card, the computing device may display a portion ofall of the assets of the media library, sorted chronologically, whilemaintaining a focus on the selected filtered asset in the display area,wherein sizes of the portion of the plurality of assets displayed in thedisplay area are substantially equal.

In another approach, the current card may be a particular month carddisplaying at least one key asset from the corresponding month. The keyasset(s) shown on the month card may be selected based on curationscores of all filtered assets in the corresponding month, with highestscoring filtered assets being key assets that may be selected fordisplay in one example.

In response to receiving input selecting a key asset displayed to theparticular month card, the computing device may display a particular daycard that shows the selected key asset on the day card.

In one approach, month cards may be limited to displaying up to five keyassets, one for each calendar week of the corresponding month.

In another example, the current card may be a particular year carddisplaying one or more particular key assets from months of thecorresponding year. The key assets displayed may be selected based oncuration scores of key assets for month cards that represent months inthe corresponding year represented by the particular year card. The keyassets displayed may further be selected based on a similarity between acurrent date and a timestamp of the key assets that represent the monthsin the corresponding year. For example, if the current month is April,the key asset(s) chosen for a year card for 2011 may be selected fromkey assets from the month of April 2011.

In a further approach, in response to receiving input selecting acertain key asset displayed to the particular year card, the computingdevice ay display a particular month card that comprises the certain keyasset in the GUI.

Graphical User Interfaces

This disclosure above describes various Graphical User Interfaces (GUIs)for implementing various features, processes or workflows. These GUIscan be presented on a variety of electronic devices including but notlimited to laptop computers, desktop computers, computer terminals,television systems, tablet computers, e-book readers and smart phones.One or more of these electronic devices can include a touch-sensitivesurface. The touch-sensitive surface can process multiple simultaneouspoints of input, including processing data related to the pressure,degree or position of each point of input. Such processing canfacilitate gestures with multiple fingers, including pinching andswiping.

When the disclosure refers to “select” or “selecting” user interfaceelements in a GUI, these terms are understood to include clicking or“hovering” with a mouse or other input device over a user interfaceelement, or touching, tapping or gesturing with one or more fingers orstylus on a user interface element. User interface elements can bevirtual buttons, menus, selectors, switches, sliders, scrubbers, knobs,thumbnails, links, icons, radio buttons, checkboxes and any othermechanism for receiving input from, or providing feedback to a user.

Privacy

As described above, one aspect of the present technology is thegathering and use of data available from various sources to select anddisplay on a GUI assets from a media library that may be of interest toa user. The present disclosure contemplates that in some instances, thisgathered data may include personal information data that uniquelyidentifies or can be used to contact or locate a specific person. Suchpersonal information data can include demographic data, location-baseddata, telephone numbers, email addresses, twitter ID's, home addresses,data or records relating to a user's health or level of fitness (e.g.,vital signs measurements, medication information, exercise information),date of birth, or any other identifying or personal information.

The present disclosure recognizes that the use of such personalinformation data, in the present technology, can be used to the benefitof users. For example, the personal information data can be used toselect images, videos, and other assets from the media library that willbe of greater interest to the user. Further, other uses for personalinformation data that benefit the user are also contemplated by thepresent disclosure. For instance, health and fitness data may be used toprovide insights into a user's general wellness, or may be used aspositive feedback to individuals using technology to pursue wellnessgoals.

The present disclosure contemplates that the entities responsible forthe collection, analysis, disclosure, transfer, storage, or other use ofsuch personal information data will comply with well-established privacypolicies and/or privacy practices. In particular, such entities shouldimplement and consistently use privacy policies and practices that aregenerally recognized as meeting or exceeding industry or governmentalrequirements for maintaining personal information data private andsecure. Such policies should be easily accessible by users, and shouldbe updated as the collection and/or use of data changes. Personalinformation from users should be collected for legitimate and reasonableuses of the entity and not shared or sold outside of those legitimateuses. Further, such collection/sharing should occur after receiving theinformed consent of the users. Additionally, such entities shouldconsider taking any needed steps for safeguarding and securing access tosuch personal information data and ensuring that others with access tothe personal information data adhere to their privacy policies andprocedures. Further, such entities can subject themselves to evaluationby third parties to certify their adherence to widely accepted privacypolicies and practices. In addition, policies and practices should beadapted for the particular types of personal information data beingcollected and/or accessed and adapted to applicable laws and standards,including jurisdiction-specific considerations. For instance, in the US,collection of or access to certain health data may be governed byfederal and/or state laws, such as the Health Insurance Portability andAccountability Act (HIPAA); whereas health data in other countries maybe subject to other regulations and policies and should be handledaccordingly. Hence different privacy practices should be maintained fordifferent personal data types in each country.

Despite the foregoing, the present disclosure also contemplatesembodiments in which users selectively block the use of, or access to,personal information data. That is, the present disclosure contemplatesthat hardware and/or software elements can be provided to prevent orblock access to such personal information data. For example, for assetselection and display from the media library, the present technology canbe configured to allow users to select to “opt in” or “opt out” ofparticipation in the collection of personal information data duringregistration for services or anytime thereafter. In addition toproviding “opt in” and “opt out” options, the present disclosurecontemplates providing notifications relating to the access or use ofpersonal information. For instance, a user may be notified upondownloading an app that their personal information data will be accessedand then reminded again just before personal information data isaccessed by the app.

Moreover, it is the intent of the present disclosure that personalinformation data should be managed and handled in a way to minimizerisks of unintentional or unauthorized access or use. Risk can beminimized by limiting the collection of data and deleting data once itis no longer needed. In addition, and when applicable, including incertain health related applications, data de-identification can be usedto protect a user's privacy. De-identification may be facilitated, whenappropriate, by removing specific identifiers (e.g., date of birth,etc.), controlling the amount or specificity of data stored (e.g.,collecting location data a city level rather than at an address level),controlling how data is stored (e.g., aggregating data across users),and/or other methods.

Therefore, although the present disclosure broadly covers use ofpersonal information data to implement one or more various disclosedembodiments, the present disclosure also contemplates that the variousembodiments can also be implemented without the need for accessing suchpersonal information data. That is, the various embodiments of thepresent technology are not rendered inoperable due to the lack of all ora portion of such personal information data. For example, images,videos, and other assets of a media library may be selected anddisplayed to a user by inferring preferences based on non-personalinformation data or a bare minimum amount of personal information, suchas the content being requested by the device associated with a user,other non-personal information available to the media libraryapplication, or publicly available information.

Example System Architecture

FIG. 14 is a block diagram of an example computing device 1400 that canimplement the features and processes of FIGS. 1-13 . The computingdevice 1400 can include a memory interface 1402, one or more dataprocessors, image processors and/or central processing units 1404, and aperipherals interface 1406. The memory interface 1402, the one or moreprocessors 1404 and/or the peripherals interface 1406 can be separatecomponents or can be integrated in one or more integrated circuits. Thevarious components in the computing device 1400 can be coupled by one ormore communication buses or signal lines.

Sensors, devices, and subsystems can be coupled to the peripheralsinterface 1406 to facilitate multiple functionalities. For example, amotion sensor 1410, a light sensor 1412, and a proximity sensor 1414 canbe coupled to the peripherals interface 1406 to facilitate orientation,lighting, and proximity functions. Other sensors 1416 can also beconnected to the peripherals interface 1406, such as a global navigationsatellite system (GNSS) (e.g., GPS receiver), a temperature sensor, abiometric sensor, magnetometer or other sensing device, to facilitaterelated functionalities.

A camera subsystem 1420 and an optical sensor 1422, e.g., a chargedcoupled device (CCD) or a complementary metal-oxide semiconductor (CMOS)optical sensor, can be utilized to facilitate camera functions, such asrecording photographs and video clips. The camera subsystem 1420 and theoptical sensor 1422 can be used to collect images of a user to be usedduring authentication of a user, e.g., by performing facial recognitionanalysis.

Communication functions can be facilitated through one or more wirelesscommunication subsystems 1424, which can include radio frequencyreceivers and transmitters and/or optical (e.g., infrared) receivers andtransmitters. The specific design and implementation of thecommunication subsystem 1424 can depend on the communication network(s)over which the computing device 1400 is intended to operate. Forexample, the computing device 1400 can include communication subsystems1424 designed to operate over a GSM network, a GPRS network, an EDGEnetwork, a Wi-Fi or WiMax network, and a Bluetooth™ network. Inparticular, the wireless communication subsystems 1424 can includehosting protocols such that the device 100 can be configured as a basestation for other wireless devices.

An audio subsystem 1426 can be coupled to a speaker 1428 and amicrophone 1430 to facilitate voice-enabled functions, such as speakerrecognition, voice replication, digital recording, and telephonyfunctions. The audio subsystem 1426 can be configured to facilitateprocessing voice commands, voiceprinting and voice authentication, forexample.

The I/O subsystem 1440 can include a touch-surface controller 1442and/or other input controller(s) 1444. The touch-surface controller 1442can be coupled to a touch surface 1446. The touch surface 1446 andtouch-surface controller 1442 can, for example, detect contact andmovement or break thereof using any of a plurality of touch sensitivitytechnologies, including but not limited to capacitive, resistive,infrared, and surface acoustic wave technologies, as well as otherproximity sensor arrays or other elements for determining one or morepoints of contact with the touch surface 1446.

The other input controller(s) 1444 can be coupled to other input/controldevices 1448, such as one or more buttons, rocker switches, thumb-wheel,infrared port, USB port, and/or a pointer device such as a stylus. Theone or more buttons (not shown) can include an up/down button for volumecontrol of the speaker 1428 and/or the microphone 1430.

In one implementation, a pressing of the button for a first duration candisengage a lock of the touch surface 1446; and a pressing of the buttonfor a second duration that is longer than the first duration can turnpower to the computing device 1400 on or off. Pressing the button for athird duration can activate a voice control, or voice command, modulethat enables the user to speak commands into the microphone 1430 tocause the device to execute the spoken command. The user can customize afunctionality of one or more of the buttons. The touch surface 1446 can,for example, also be used to implement virtual or soft buttons and/or akeyboard.

In some implementations, the computing device 1400 can present recordedaudio and/or video files, such as MP3, AAC, and MPEG files. In someimplementations, the computing device 1400 can include the functionalityof an MP3 player, such as an iPod™.

The memory interface 1402 can be coupled to memory 1450. The memory 1450can include high-speed random-access memory and/or non-volatile memory,such as one or more magnetic disk storage devices, one or more opticalstorage devices, and/or flash memory (e.g., NAND, NOR). The memory 1450can store an operating system 1452, such as Darwin, RTXC, LINUX, UNIX,OS X, WINDOWS, or an embedded operating system such as VxWorks.

The operating system 1452 can include instructions for handling basicsystem services and for performing hardware dependent tasks. In someimplementations, the operating system 1452 can be a kernel (e.g., UNIXkernel). In some implementations, the operating system 1452 can includeinstructions for performing voice authentication. For example, operatingsystem 1452 can implement the curation of assets in a media library asdescribed with reference to FIGS. 1-13 .

The memory 1450 can also store communication instructions 1454 tofacilitate communicating with one or more additional devices, one ormore computers and/or one or more servers. The memory 1450 can includegraphical user interface instructions 1456 to facilitate graphic userinterface processing; sensor processing instructions 1458 to facilitatesensor-related processing and functions; phone instructions 1460 tofacilitate phone-related processes and functions; electronic messaginginstructions 1462 to facilitate electronic-messaging related processesand functions; web browsing instructions 1464 to facilitate webbrowsing-related processes and functions; media processing instructions1466 to facilitate media processing-related processes and functions;GNSS/Navigation instructions 1468 to facilitate GNSS andnavigation-related processes and instructions; and/or camerainstructions 1470 to facilitate camera-related processes and functions.

The memory 1450 can store software instructions 1472 to facilitate otherprocesses and functions, such as the media library curation processesand functions as described with reference to FIGS. 1-13 .

The memory 1450 can also store other software instructions 1474, such asweb video instructions to facilitate web video-related processes andfunctions; and/or web shopping instructions to facilitate webshopping-related processes and functions. In some implementations, themedia processing instructions 1466 are divided into audio processinginstructions and video processing instructions to facilitate audioprocessing-related processes and functions and video processing-relatedprocesses and functions, respectively.

Each of the above identified instructions and applications cancorrespond to a set of instructions for performing one or more functionsdescribed above. These instructions need not be implemented as separatesoftware programs, procedures, or modules. The memory 1450 can includeadditional instructions or fewer instructions. Furthermore, variousfunctions of the computing device 1400 can be implemented in hardwareand/or in software, including in one or more signal processing and/orapplication specific integrated circuits.

1. (canceled)
 2. A method, comprising: determining curation scores for afirst plurality of assets corresponding to a first time period, whereina curation score for a particular asset, of the first plurality ofassets, is based on at least one of: a number of shares for theparticular asset, a number of views for the particular asset, a numberof persons identified in the particular asset, a size of a grouping ofassets that includes the particular asset, or an imputed meaning for theparticular asset, selecting, for representing the first time period, afirst set of one or more assets from the first plurality of assets basedat least on a respective curation score for each asset of the first setof one or more assets from the first plurality of assets; generating atleast a first card representing the first time period, the first card(a) including the first set of one or more assets from the firstplurality of assets, and (b) not including a second set of one or moreassets from the first plurality of assets; and causing display, on agraphical user interface (GUI), of at least the first card representingthe first time period.
 3. The method as recited in claim 2, furthercomprising: prior to causing display on the GUI of the first cardrepresenting the first time period: receiving first user input, via theGUI, selecting the first card for display from amongst a set of cardsrepresenting different time periods.
 4. The method as recited in claim3, further comprising: receiving, by the computing device, second userinput selecting a particular asset of the first set of one or moreassets shown by the first card; in response to receiving the second userinput: presenting a transition from a first view showing at least thefirst card representing the first time period to an all assets view thatmaintains a focus on the particular asset; and in response to thetransition: causing display, on the GUI, of the all assets view showinga portion of a set of media assets of a media library sortedchronologically, wherein sizes of the portion of the set of media assetsdisplayed in the all assets view are substantially equal.
 5. The methodas recited in claim 2, further comprising: determining curation scoresfor a second plurality of assets corresponding to a second time period;selecting, for representing the second time period, a third set of oneor more assets from the second plurality of assets based at least on arespective curation score for each asset of the third set of one or moreassets from the second plurality of assets; generating at least a secondcard representing the second time period, the second card (a) includingthe third set of one or more assets from the second plurality of assets,and (b) not including a fourth set of one or more assets from the secondplurality of assets; and causing display, on the GUI, of at least thesecond card representing the second time period, wherein the second timeperiod is different in length than the first time period.
 6. The methodas recited in claim 5, further comprising: prior to causing display onthe GUI of at least the second card representing the second time period:receiving a first user input, via the GUI, selecting a particular assetof the first set of one or more assets shown by the first card; inresponse to receiving the first user input: presenting a transition froma first view showing at least the first card representing the first timeperiod to a second view showing at least the second card representingthe second time period that maintains a focus on the particular asset;and in response to the transition: causing display, on the GUI, of thesecond view showing at least the second card representing the secondtime period, wherein the second view displays assets in chronologicalorder.
 7. The method as recited in claim 5, further comprising:determining curation scores for a third plurality of assetscorresponding to a third time period; selecting, for representing thethird time period, a fifth set of one or more assets from the thirdplurality of assets based at least on a respective curation score foreach asset of the fifth set of one or more assets from the thirdplurality of assets; generating at least a third card representing thethird time period, the third card (a) including the fifth set of one ormore assets from the third plurality of assets, and (b) not including asixth set of one or more assets from the third plurality of assets; andcausing display, on the GUI, of at least the third card representing thethird time period, wherein the third time period is different in lengththan both the first time period and the second time period.
 8. Themethod as recited in claim 7, further comprising: prior to causingdisplay on the GUI of at least the third card representing the thirdtime period: receiving a second user input, via the GUI, selecting thethird time period; in response to receiving the second user input:presenting a transition from the second view to the third view showingat least the third card representing the third time period; and inresponse to the transition: causing display, on the GUI, of the thirdview showing at least the third card representing the third time period,wherein the third view displays assets in chronological order, whereinthird card includes one or more assets selected from one or morerespective cards that represent a corresponding second time periodwithin the third time period, the represented second time period in thecorresponding third time period being nearest to a current second timeperiod, wherein the third time period is greater in length than thesecond time period.
 9. The method as recited in claim 2, wherein the GUIdisplays the first set of one or more assets in chronological order inthe first card.
 10. The method as recited in claim 2, furthercomprising: filtering the first plurality of assets corresponding to thefirst time period prior to determining the curation scores, thefiltering comprising removing duplicate assets, assets of poor quality,and assets having a utility purpose.
 11. The method as recited in claim2, wherein a size of at least one asset displayed on the first card islarger than other assets displayed in the first card based on respectivecuration scores of the first set of one or more assets.
 12. A system,comprising: one or more processors; and a non-transitorycomputer-readable medium including one or more sequences of instructionsthat, when executed by the one or more processors, cause the one or moreprocessors to perform operations comprising: determining curation scoresfor a first plurality of assets corresponding to a first time period,wherein a curation score for a particular asset, of the first pluralityof assets, is based on at least one of: a number of shares for theparticular asset, a number of views for the particular asset, a numberof persons identified in the particular asset, a size of a grouping ofassets that includes the particular asset, or an imputed meaning for theparticular asset, selecting, for representing the first time period, afirst set of one or more assets from the first plurality of assets basedat least on a respective curation score for each asset of the first setof one or more assets from the first plurality of assets; generating atleast a first card representing the first time period, the first card(a) including the first set of one or more assets from the firstplurality of assets, and (b) not including a second set of one or moreassets from the first plurality of assets; and causing display, on agraphical user interface (GUI), of at least the first card representingthe first time period.
 13. The system as recited in claim 12, whereinthe operations further comprise: prior to causing display on the GUI ofthe first card representing the first time period: receiving first userinput, via the GUI, selecting the first card for display from amongst aset of cards representing different time periods.
 14. The system asrecited in claim 13, wherein the operations further comprise: receivingsecond user input selecting a particular asset of the first set of oneor more assets shown by the first card; in response to receiving thesecond user input: presenting a transition from a first view showing atleast the first card representing the first time period to an all assetsview that maintains a focus on the particular asset; and in response tothe transition: causing display, on the GUI, of the all assets viewshowing a portion of a set of media assets of a media library sortedchronologically, wherein sizes of the portion of the set of media assetsdisplayed in the all assets view are substantially equal.
 15. The systemas recited in claim 12, wherein the operations further comprise:determining curation scores for a second plurality of assetscorresponding to a second time period; selecting, for representing thesecond time period, a third set of one or more assets from the secondplurality of assets based at least on a respective curation score foreach asset of the third set of one or more assets from the secondplurality of assets; generating at least a second card representing thesecond time period, the second card (a) including the third set of oneor more assets from the second plurality of assets, and (b) notincluding a fourth set of one or more assets from the second pluralityof assets; and causing display, on the GUI, of at least the second cardrepresenting the second time period, wherein the second time period isdifferent in length than the first time period.
 16. The system asrecited in claim 15, wherein the operations further comprise: prior tocausing display on the GUI of at least the second card representing thesecond time period: receiving a first user input, via the GUI, selectinga particular asset of the first set of one or more assets shown by thefirst card; in response to receiving the first user input: presenting atransition from a first view showing at least the first cardrepresenting the first time period to a second view showing at least thesecond card representing the second time period that maintains a focuson the particular asset; and in response to the transition: causingdisplay, on the GUI, of the second view showing at least the second cardrepresenting the second time period, wherein the second view displaysassets in chronological order.
 17. The system as recited in claim 15,wherein the operations further comprise: determining curation scores fora third plurality of assets corresponding to a third time period;selecting, for representing the third time period, a fifth set of one ormore assets from the third plurality of assets based at least on arespective curation score for each asset of the fifth set of one or moreassets from the third plurality of assets; generating at least a thirdcard representing the third time period, the third card (a) includingthe fifth set of one or more assets from the third plurality of assets,and (b) not including a sixth set of one or more assets from the thirdplurality of assets; and causing display, on the GUI, of at least thethird card representing the third time period, wherein the third timeperiod is different in length than both the first time period and thesecond time period.
 18. The system as recited in claim 17, wherein theoperations further comprise: prior to causing display on the GUI of atleast the third card representing the third time period: receiving asecond user input, via the GUI, selecting the third time period; inresponse to receiving the second user input: presenting a transitionfrom the second view to the third view showing at least the third cardrepresenting the third time period; and in response to the transition:causing display, on the GUI, of the third view showing at least thethird card representing the third time period, wherein the third viewdisplays assets in chronological order, wherein third card includes oneor more assets selected from one or more respective cards that representa corresponding second time period within the third time period, therepresented second time period in the corresponding third time periodbeing nearest to a current second time period, wherein the third timeperiod is greater in length than the second time period.
 19. The systemas recited in claim 12, wherein the GUI displays the first set of one ormore assets in chronological order in the first card, and wherein theoperations further comprise: filtering the first plurality of assetscorresponding to the first time period prior to determining the curationscores, the filtering comprising removing duplicate assets, assets ofpoor quality, and assets having a utility purpose.
 20. The system asrecited in claim 12, wherein a size of at least one asset displayed onthe first card is larger than other assets displayed in the first cardbased on respective curation scores of the first set of one or moreassets.
 21. A non-transitory computer-readable medium including one ormore sequences of instructions that, when executed by one or moreprocessors, cause the one or more processors to perform operationscomprising: determining curation scores for a first plurality of assetscorresponding to a first time period, wherein a curation score for aparticular asset, of the first plurality of assets, is based on at leastone of: a number of shares for the particular asset, a number of viewsfor the particular asset, a number of persons identified in theparticular asset, a size of a grouping of assets that includes theparticular asset, or an imputed meaning for the particular asset,selecting, for representing the first time period, a first set of one ormore assets from the first plurality of assets based at least on arespective curation score for each asset of the first set of one or moreassets from the first plurality of assets; generating at least a firstcard representing the first time period, the first card (a) includingthe first set of one or more assets from the first plurality of assets,and (b) not including a second set of one or more assets from the firstplurality of assets; and causing display, on a graphical user interface(GUI), of at least the first card representing the first time period.